from __future__ import annotations

from ..extensions import db


# /**
#  * 作者: "test_LH"
#  * 日期: 2025-10-11
#  * 名称: Role
#  * 作用: 定义系统中的角色实体，控制用户权限范围
#  * 参数:
#  *   @param 无 类定义不接收参数
#  * 返回: 无
#  * 备注: 继承自 SQLAlchemy 模型基类
#  */
class Role(db.Model):
    id = db.Column(db.Integer(), primary_key=True)  # 角色主键，整型自增
    name = db.Column(db.String(80), unique=True, nullable=False)  # 角色名称，需唯一
    description = db.Column(db.String(255))  # 角色描述信息

    # /**
    #  * 作者: "test_LH"
    #  * 日期: 2025-10-11
    #  * 名称: __repr__
    #  * 作用: 返回角色实例的可读字符串表示，便于调试输出
    #  * 参数:
    #  *   @param self 当前 Role 实例
    #  * 返回: 包含角色名称的字符串
    #  * 备注: 无
    #  */
    def __repr__(self) -> str:  # pragma: no cover - repr helper
        return f"<Role {self.name}>"
